<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div>
    <table border="1">
        <caption>用户列表</caption>
        <tr>
            <th>id</th>
            <th>用户名</th>
            <th>密码</th>
            <th>昵称</th>
            <th>年龄</th>
        </tr>
        <tr v-for="user in arr">
            <td>{{user.id}}</td>
            <td>{{user.username}}</td>
            <td>{{user.password}}</td>
            <td>{{user.nick}}</td>
            <td>{{user.age}}</td>
        </tr>
    </table>
    <input type="button" value="请求数据" @click="fn()">
</div>
<!--引入axios框架-->
<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></script>
<!--引入VUE框架-->
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<script>
    let v = new Vue({
        el: "div",
        data: {
            arr: []
        },
        methods:{
            fn:function () {
                //发出异步请求获取用户数据
                axios.get("/select").then(function (response) {
                    //把请求到的数据赋值给VUE里面的数据对象,页面会自动发生改变
                    //服务器返回的内容实际上是Json格式的字符串, axios框架内部会将此字符串
                    //转成数组装对象的格式
                    v.arr = response.data;
                })
            }
        },
        created:function () {//当VUE对象被创建出来之后会立即执行的方法
            axios.get("/select").then(function (response) {
                v.arr = response.data;
            })
        }
    })
</script>
</body>
</html>